package com.zhiche.lisa.lspm.dao.model.trailer;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableLogic;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 挂车
 * </p>
 *
 * @author qichao
 * @since 2018-06-27
 */
@TableName("lisa_trailer_info")
public class TrailerInfo extends Model<TrailerInfo> {

    private static final long serialVersionUID = 1L;

	@TableId(value="id", type= IdType.AUTO)
	private Long id;
    /**
     * 车牌号
     */
	private String plate;
    /**
     * 车主姓名
     */
	@TableField("owner_name")
	private String ownerName;
    /**
     * 车主电话
     */
	@TableField("owner_mobile")
	private String ownerMobile;
    /**
     * 业务车牌
     */
	@TableField("plate_anno")
	private String plateAnno;
    /**
     * 生产厂商
     */
	private String manufacturer;
    /**
     * 长
     */
	private Float length;
    /**
     * 宽
     */
	private Float width;
    /**
     * 高
     */
	private Float height;
    /**
     * 出厂日期
     */
	@TableField("gmt_manu")
	private Date gmtManu;
    /**
     * 上次年检日期
     */
	@TableField("gmt_as")
	private Date gmtAs;
    /**
     * 品牌型号
     */
	private String model;
    /**
     * 轴数
     */
	@TableField("axis_number")
	private Integer axisNumber;
    /**
     * 自重
     */
	@TableField("self_weight")
	private Integer selfWeight;
    /**
     * 所属承运商
     */
	@TableField("lsp_id")
	private Long lspId;
    /**
     * 挂车类型
     */
	@TableField("trailer_type")
	private String trailerType;
	/**
     * 	车辆属性
     */
	@TableField("trailer_proper")
	private String trailerProper;
    /**
     * 所属车队
     */
	@TableField("fleet_id")
	@JsonSerialize(using=ToStringSerializer.class)
	private Long fleetId;

    /**
     * 业务状态：0-停用；1-启用
     */
	private Integer status;
    /**
     * 认证状态：0-未认证；1-已认证
     */
	@TableField("auth_status")
	private Integer authStatus;
    /**
     * 创建人
     */
	private String creator;
    /**
     * 注册时间
     */
	@TableField("gmt_create")
	private Date gmtCreate;
    /**
     * 数据来源
     */
	@TableField("create_from")
	private String createFrom;
    /**
     * 更新时间
     */
	@TableField("gmt_update")
	private Date gmtUpdate;
    /**
     * 租户ID
     */
	@TableField("tenant_id")
	private Long tenantId;

	@TableField("is_delete")
	@TableLogic
	private Integer isDelete;

	public String getTrailerProper() {
		return trailerProper;
	}

	public void setTrailerProper(String trailerProper) {
		this.trailerProper = trailerProper;
	}

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getPlate() {
		return plate;
	}

	public void setPlate(String plate) {
		this.plate = plate;
	}

	public String getOwnerName() {
		return ownerName;
	}

	public void setOwnerName(String ownerName) {
		this.ownerName = ownerName;
	}

	public String getOwnerMobile() {
		return ownerMobile;
	}

	public void setOwnerMobile(String ownerMobile) {
		this.ownerMobile = ownerMobile;
	}

	public String getPlateAnno() {
		return plateAnno;
	}

	public void setPlateAnno(String plateAnno) {
		this.plateAnno = plateAnno;
	}

	public String getManufacturer() {
		return manufacturer;
	}

	public void setManufacturer(String manufacturer) {
		this.manufacturer = manufacturer;
	}

	public Float getLength() {
		return length;
	}

	public void setLength(Float length) {
		this.length = length;
	}

	public Float getWidth() {
		return width;
	}

	public void setWidth(Float width) {
		this.width = width;
	}

	public Float getHeight() {
		return height;
	}

	public void setHeight(Float height) {
		this.height = height;
	}

	public Date getGmtManu() {
		return gmtManu;
	}

	public void setGmtManu(Date gmtManu) {
		this.gmtManu = gmtManu;
	}

	public Date getGmtAs() {
		return gmtAs;
	}

	public void setGmtAs(Date gmtAs) {
		this.gmtAs = gmtAs;
	}

	public String getModel() {
		return model;
	}

	public void setModel(String model) {
		this.model = model;
	}

	public Integer getAxisNumber() {
		return axisNumber;
	}

	public void setAxisNumber(Integer axisNumber) {
		this.axisNumber = axisNumber;
	}

	public Integer getSelfWeight() {
		return selfWeight;
	}

	public void setSelfWeight(Integer selfWeight) {
		this.selfWeight = selfWeight;
	}

	public Long getLspId() {
		return lspId;
	}

	public void setLspId(Long lspId) {
		this.lspId = lspId;
	}

	public String getTrailerType() {
		return trailerType;
	}

	public void setTrailerType(String trailerType) {
		this.trailerType = trailerType;
	}

	public Long getFleetId() {
		return fleetId;
	}

	public void setFleetId(Long fleetId) {
		this.fleetId = fleetId;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public Integer getAuthStatus() {
		return authStatus;
	}

	public void setAuthStatus(Integer authStatus) {
		this.authStatus = authStatus;
	}

	public String getCreator() {
		return creator;
	}

	public void setCreator(String creator) {
		this.creator = creator;
	}

	public Date getGmtCreate() {
		return gmtCreate;
	}

	public void setGmtCreate(Date gmtCreate) {
		this.gmtCreate = gmtCreate;
	}

	public String getCreateFrom() {
		return createFrom;
	}

	public void setCreateFrom(String createFrom) {
		this.createFrom = createFrom;
	}

	public Date getGmtUpdate() {
		return gmtUpdate;
	}

	public void setGmtUpdate(Date gmtUpdate) {
		this.gmtUpdate = gmtUpdate;
	}

	public Long getTenantId() {
		return tenantId;
	}

	public void setTenantId(Long tenantId) {
		this.tenantId = tenantId;
	}

	@Override
	protected Serializable pkVal() {
		return this.id;
	}

	@Override
	public String toString() {
		return "TrailerInfo{" +
			", id=" + id +
			", plate=" + plate +
			", ownerName=" + ownerName +
			", ownerMobile=" + ownerMobile +
			", plateAnno=" + plateAnno +
			", manufacturer=" + manufacturer +
			", length=" + length +
			", width=" + width +
			", height=" + height +
			", gmtManu=" + gmtManu +
			", gmtAs=" + gmtAs +
			", model=" + model +
			", axisNumber=" + axisNumber +
			", selfWeight=" + selfWeight +
			", lspId=" + lspId +
			", trailerType=" + trailerType +
			", fleetId=" + fleetId +
			", status=" + status +
			", authStatus=" + authStatus +
			", creator=" + creator +
			", gmtCreate=" + gmtCreate +
			", createFrom=" + createFrom +
			", gmtUpdate=" + gmtUpdate +
			", tenantId=" + tenantId +
			"}";
	}

	public Integer getIsDelete() {
		return isDelete;
	}

	public void setIsDelete(Integer isDelete) {
		this.isDelete = isDelete;
	}
}
